λ stack build
projectのbuild
役割
projectの依存関係を確認し、installを行う
projectのbuild
hsコードをコンパイルし、.o や .hi を生成
バイナリやライブラリの生成:
実行可能なbinary(executable)やlibraryを生成する
通常、生成物は .stack-work/に保存される
GPT-4.icon
使い方
code:bash
一般的な例
プロジェクト全体をビルド:
code:bash
stack build
依存関係を解決し、プロジェクト全体をビルドします。
特定のパッケージや対象だけをビルド:
code:bash
stack build my-library
stack build my-executable
my-library や my-executable を指定してビルドします。
再ビルドを強制:
code:bash
stack build --force-dirty
すべてのファイルを再コンパイルします。
---
オプション
1. 並列ビルド:
code:bash
stack build --jobs=N
コンパイルを並列で実行するジョブ数を指定します(N は整数)。
2. ログを詳細化:
code:bash
stack build --verbose
詳細なログを出力します。
3. テストやベンチマークを含める:
code:bash
stack build --test --bench
テストやベンチマーク用のコードもビルドします。
4. 生成物を削除して再ビルド:
code:bash
stack clean && stack build
ビルドキャッシュを削除した後、クリーンビルドを実行します。
---
関連ディレクトリや生成物
ビルドアーティファクト(中間ファイルやバイナリ)や依存関係が保存されるディレクトリ。
dist:
.stack-work 内に生成され、Cabal が生成したビルド成果物が含まれます。